#ifndef __Win32EGLWindow_H__
#define __Win32EGLWindow_H__


#include "U2EGLWindow.h"
#include "U2Win32EGLSupport.h"


U2EG_NAMESPACE_BEGIN


class _U2GLESShare U2Win32EGLWindow : public U2EGLWindow
{
protected:
	virtual U2EGLContext * createEGLContext() const;
	virtual void getLeftAndTopFromNativeWindow(int & left, int & top, u2uint width, u2uint height);
	virtual void initNativeCreatedWindow(const NameValuePairList *miscParams);
	virtual void createNativeWindow( int &left, int &top, u2uint &width, u2uint &height, U2String &title );
	virtual void reposition(int left, int top);
	virtual void resize(unsigned int width, unsigned int height);
	virtual void windowMovedOrResized();
	virtual void switchFullScreen(bool fullscreen);

public:
	U2Win32EGLWindow(U2Win32EGLSupport* glsupport);
	virtual ~U2Win32EGLWindow();
    void create(const U2String& name, unsigned int width, unsigned int height,
                bool fullScreen, const NameValuePairList *miscParams);
};


U2EG_NAMESPACE_END


#endif
